package com.lingz.manager.modules.base.service;

import com.lingz.manager.base.DevplatBaseService;
import com.lingz.manager.common.vo.Result;
import com.lingz.manager.common.vo.SearchVo;
import com.lingz.manager.modules.base.entity.FileBySys;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;


/**
 * 文件管理接口
 * @author Exrick
 */
public interface FileService extends DevplatBaseService<FileBySys,String> {

    /**
     * 多条件获取列表
     * @param file
     * @param searchVo
     * @param pageable
     * @return
     */
    Page<FileBySys> findByCondition(FileBySys file, SearchVo searchVo, Pageable pageable);

    List<FileBySys> findByCondition(FileBySys file, SearchVo searchVo);

    int countByTaskIdAndRandom(String taskId,String random);

    FileBySys findById(String id);

    //根据任务id删除文件数据
    void delFileByTaskId(String[] taskIdArr);

    String deleteFileInfoByIds(String[] ids);

    Result<String> updateFileName(FileBySys file);
}